The present technique relates to an apparatus and method for subtracting significand values of floating-point operands.
It is common to use floating-point (FP) representation in data processing systems. A floating-point number includes a significand and an exponent indicating a significance of the bits of the significand. A normalised floating-point number has a significand of at least 1 and less than 2, and hence has the format 1.xxxxxx. When subtracting two floating-point numbers that are close to each other, this can result in the significand no longer being normalised, i.e. there can be a large number of leading 0s. In order to seek to re-normalise the significand of the result, a left shift operation can be performed on the difference value obtained by subtracting one significand from the other significand.
However, there can be significant latency involved in the determination of a normalised significand of the result obtained when subtracting two similar floating-point numbers, and accordingly it would be desirable to provide an improved mechanism for subtracting significand values in such situations.